Reading routes is doable using the ipRouteTable objects. For example, this CLI:
ip route 10.10.10.0 255.255.255.0 Null0
Would look like the following in the ipRouteTable:
RFC1213-MIB::ipRouteDest.10.10.10.0 = IpAddress: 10.10.10.0
RFC1213-MIB::ipRouteIfIndex.10.10.10.0 = INTEGER: 27
RFC1213-MIB::ipRouteMetric1.10.10.10.0 = INTEGER: 0
RFC1213-MIB::ipRouteMetric2.10.10.10.0 = INTEGER: -1
RFC1213-MIB::ipRouteMetric3.10.10.10.0 = INTEGER: -1
RFC1213-MIB::ipRouteMetric4.10.10.10.0 = INTEGER: -1
RFC1213-MIB::ipRouteNextHop.10.10.10.0 = IpAddress: 0.0.0.0
RFC1213-MIB::ipRouteType.10.10.10.0 = INTEGER: direct(3)
RFC1213-MIB::ipRouteProto.10.10.10.0 = INTEGER: local(2)
RFC1213-MIB::ipRouteAge.10.10.10.0 = INTEGER: 0
RFC1213-MIB::ipRouteMask.10.10.10.0 = IpAddress: 255.255.255.0
RFC1213-MIB::ipRouteMetric5.10.10.10.0 = INTEGER: -1
RFC1213-MIB::ipRouteInfo.10.10.10.0 = OID: SNMPv2-SMI::zeroDotZero
In this example, ifIndex 27 is Null0.
While these objects are read-write, you will not be able to create new routing table entries via SNMP (only modify existing entries).
Creating routes is supported in the new IP-FORWARD-MIB (using the ipCidrRouteTable), but this table is not supported on the 3550, and I do not know what code your 6500 is running.